﻿using System;
using System.Web.Mvc;

namespace Citi.ActionItem.WebUI.Helpers
{
    public class Session : Controller
    {
        #region SessionName enum

        public enum SessionName
        {
            Noticias,
            PessoaLogada,
            Comentarios
        };

        #endregion

        public object WebSession(SessionName sessionName)
        {
            return Session[sessionName.ToString()];
        }

        public T WebSession<T>(SessionName sessionName)
        {
            return (T)Session[sessionName.ToString()];
        }

        public T WebSession<T>(string sessionName)
        {
            return (T)Session[sessionName];
        }

        public void WebSession(SessionName sessionName, object value)
        {
            Session[sessionName.ToString()] = value;
        }

        public void WebSession(string sessionName, object value)
        {
            Session[sessionName] = value;
        }

        public void ClearAllSessions()
        {
            foreach (int value in Enum.GetValues(typeof(SessionName)))
                WebSession((SessionName)value, null);
        }
    }
}